package com.dd.cloud.user.entity.product;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.gitee.sunchenbin.mybatis.actable.annotation.Column;
import com.gitee.sunchenbin.mybatis.actable.annotation.Table;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 收费服务产品使用记录表
 *
 * @author Lx
 * @version 1.0
 * @date 2024/1/19
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@Table(comment = "收费服务产品使用记录表")
public class ProductUseRecord implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 收费服务产品使用记录表id
     */
    @TableId(value = "id", type = IdType.AUTO)
    @Column(isKey = true, isAutoIncrement = true)
    private Integer id;

    /**
     * 订单编号
     */
    @Column(comment = "订单编号")
    private String orderNo;

    /**
     * 处方编号
     */
    @Column(comment = "处方编号")
    private String tencode;

    /**
     * 商品类型 1首月优惠 2月卡会员 3季卡会员 4年卡会员
     */
    @Column(comment = "商品类型 1首月优惠 2月卡会员 3季卡会员 4年卡会员")
    private Integer spType;

    /**
     * 购买记录id
     */
    @Column(comment = "购买记录id")
    private Integer buyId;

    /**
     * 医生id
     */
    @Column(comment = "医生id")
    private Integer doctorId;

    /**
     * 医生姓名
     */
    @Column(length = 30, comment = "医生姓名")
    private String doctorName;

    /**
     * 医生账号
     */
    @Column(length = 11, comment = "医生账号")
    private String doctorAccount;

    /**
     * 患者姓名
     */
    @Column(comment = "患者姓名")
    private String patientName;

    /**
     * 疾病
     */
    @Column(comment = "疾病")
    private String diseaseName;

    /**
     * 订单实际支付金额
     */
    @Column(comment = "订单实际支付金额")
    private Integer actualPay;

    /**
     * 使用类型 1开方 2课程
     */
    @Column(comment = "使用类型 1开方 2课程", defaultValue = "1")
    private Integer type;

    /**
     * 课程观看时长
     */
    @Column(comment = "课程观看时长")
    private String kcTime;

    /**
     * 课程名称
     */
    @Column(comment = "课程名称")
    private String kcName;

    /**
     * 课程id
     */
    @Column(comment = "课程id")
    private Integer kcId;

    /**
     * 创建时间
     */
    @Column(comment = "创建时间")
    private LocalDateTime createDate;
}
